axios.defaults.baseURL = "http://172.0.0.1:1020/hrm"  // 配置前缀
Vue.prototpe.$http = axios // 给这个类添加一个原型的属性这个类的对象都能调用
Vue.config.productionTip = false;

axios.interceptors.request.use(config => {
    var token = $.cookie("U-TOKEN");   //token=xxxxxxxx

    //如果已经登录了,每次都把token作为一个请求头传递过程
    if (token && token.length > 0) {

        // 让每个请求携带token--['X-Token']为自定义key 请根据实际情况自行修改
        config.headers['Authorization'] = "Bearer " + token;
    }
    return config
}, error => {
    Promise.reject(error)
})

function toLogin(){
    // 放行
    for (var i = 0; i < notNeedLogin.length; i++){
        var url = notNeedLogin[i];
        if (error.config().url().indexOf(url)){
            return;
        }
    }

    alert("登陆已失效,请重新登录!");
    window.location.href = "http://user.hrm.com:6003/login.html";
}
let notNeedLogin = ["/course/search", "/courseType/crumbs"]

function noPerHandler(){
    alert("没有访问权限!");
}
// 后置拦截器
axios.interceptors.response.use(config => {
    return config
},error => {
    if (error && error.response) {
        switch (error.response.status) {
            case 401: return toLogin(error);
            case 403: return noPerHandler(error);
        }
    }
    Promise.reject(error)
});
